﻿//二进制的交换（可以将一个整数的二进制位的奇数位和偶数位交换）
//#include<stdio.h>
//#define M(n) (n= (n&(0xaaaaaaaa)>>1)+n&(0x55555555<<1))
//int main()
//{
//	int a;
//	fscanf(stdin, "%d", &a);
//	M(a);
//	printf("%d\n", a);
//	return 0;
//}

//#include<stdio.h>
//int main()
//{
//	int b = 9;
//	float* a = (float*)&b;//将其地址用浮点型存储，将会运用浮点型的存储方式
//	float c = b;
//	float d = (float)b;
//	printf("%d %f\n", b, *a);
//	//都将输出9，属于强制转化，将其转化后直接在存储9，不属于在浮点型存储的存储形式
//	printf("%.0f %.0f", c, d);
//	return 0
//}

//#include <stdio.h>
//int* init()
//{
//    int i, a[5];
//    for (int i = 0; i < 5; i++)
//        a[i] = i;
//    return a;
//}
//void print(int* a)
//{
//    for (int i = 0; i < 5; i++)
//        printf("%d ", a[i]);
//    puts("");
//}
//void reverse(int* a)
//{
//    for (int i = 4; i >= 0; i--)
//        printf("%d ", a[i]);
//}
//int main()
//{
//    print(init());
//    reverse(init());
//    return 0;
//}

//#include<stdio.h>
//int main()
//{
//    long num = 0;
//    FILE* fp = NULL;
//    if ((fp = fopen("fname.dat", "r")) == NULL)
//    {
//        printf("Can’t open the file!");
//        exit(0);
//    }
//    while (fgetc(fp) != EOF)
//    {
//        num++;
//    }
//    printf("num=%d\n", num);
//    fclose(fp);
//    return 0;
//}